星巡研究院

渗透视角下的操作系统底层

**1. 干什么** Windows 进程是资源容器对象,持有虚拟地址空间、句柄表、访问令牌、模块列表、环境变量与命令行,自身不执行指令。线程是唯一被调度器放上 CPU 执行的对象,每个进程至少含一个主线程。 **2. 谁在调** * 用户态主体:应用程序经 kernel32 封装创建与查询。 * C 库 / 系统层封装:kernel32.dll 提供 API,ntdll.dll 的 Nt/Zw 函数摆放系统服务号并陷入。 * 内核态主体:EPROCESS(进程内核对象)、ETHREAD(线程内核对象)两套独立结构。 **3. 做什么业务** 进程把资源归集到一个容器,线程在该地址空间内执行指令。进程终止时其线程随之终止。与 Linux 用单一 task\_struct 同时表达进程和线程不同,Windows 把二者拆为 EPROCESS 与 ETHREAD,用户态句柄指向这两套内核对象,与文件句柄、注册表键句柄共用同一对象机制。进程本身不具善恶属性,决定其能力的是挂载的访问令牌与所处会话。 **4. 组件清单** * EPROCESS 与 ETHREAD
这是进阶内容

升级理论包获取本册全部章节,从机器本质系统入门